<?php
/**
 * collect.php
 * 收藏抽象类
 * Author: netman
 * DateTime:  2023/9/15 10:44
 */

abstract class Contract_Api_Collect
{

    /**
     * 产品是否收藏
     * @param $typeid
     * @param $product_id
     * @return bool
     * User: netman
     * Date: 2023/9/15 10:46
     */
    abstract function is_collect($typeid, $mid, $product_id): bool;

    /**
     * 修改收藏(已收藏=>取消收藏,未收藏=>已收藏)
     * @param $typeid
     * @param $mid
     * @param $product_id
     * @return mixed
     * User: netman
     * Date: 2023/9/15 10:50
     */
    abstract function modify($typeid, $mid, $product_id) : array;

    /**
     * 获取收藏列表
     * @param $mid
     * @param $page
     * @param $pagesize
     * @return array
     * User: netman
     * Date: 2023/9/15 10:51
     */
    abstract function get_collect_list($mid,$page,$pagesize) : array;

    /**
     * 获取收藏数量
     * @param $mid
     * @return int
     * User: netman
     * Date: 2023/9/15 10:52
     */
    abstract function get_collect_num($mid) : int ;

    /**
     * 删除收藏
     * @param string $collect_ids 收藏ids
     * @return bool
     * User: netman
     * Date: 2023/9/15 10:53
     */
    abstract function del_collect_product(string $collect_ids, $mid) : bool;
}